HAL DMA io operation functions migration

This section provides information about the HAL DMA io operation functions migration.

HAL DMA operation functions in polling mode

HAL1

HAL2

HAL_StatusTypeDef HAL_DMA_Start(DMA_HandleTypeDef *hdma, uint32_t SrcAddress,
                                      uint32_t DstAddress, uint32_t DataLength);
hal_status_t HAL_DMA_StartDirectXfer(hal_dma_handle_t *hdma, uint32_t src_addr,
                                          uint32_t dest_addr, uint32_t size_byte);
HAL_StatusTypeDef HAL_DMA_PollForTransfer(DMA_HandleTypeDef *hdma,
                      HAL_DMA_LevelCompleteTypeDef CompleteLevel, uint32_t Timeout);
hal_status_t HAL_DMA_PollForXfer(hal_dma_handle_t *hdma,
                             hal_dma_xfer_level_t xfer_level, uint32_t timeout_msec);
HAL_StatusTypeDef HAL_DMA_Abort(DMA_HandleTypeDef *hdma);
hal_status_t HAL_DMA_Abort(hal_dma_handle_t *hdma);

HAL DMA operation functions in interrupt mode

HAL1

HAL2

HAL_StatusTypeDef HAL_DMA_Start_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress,
                                          uint32_t DstAddress,uint32_t DataLength);
hal_status_t HAL_DMA_StartDirectXfer_IT(hal_dma_handle_t *hdma, uint32_t src_addr,
                                              uint32_t dest_addr, uint32_t size_byte);
HAL_StatusTypeDef HAL_DMA_Abort_IT(DMA_HandleTypeDef *hdma);
hal_status_t HAL_DMA_Abort_IT(hal_dma_handle_t *hdma);

HAL DMA Linked-List operation functions

HAL1

HAL2

HAL_StatusTypeDef HAL_DMAEx_List_Start(DMA_HandleTypeDef *const hdma);
hal_status_t HAL_DMA_StartLinkedListXfer(hal_dma_handle_t *hdma, const hal_q_t *p_q);
HAL_StatusTypeDef HAL_DMAEx_List_Start_IT(DMA_HandleTypeDef *const hdma);
hal_status_t HAL_DMA_StartLinkedListXfer_IT(hal_dma_handle_t *hdma, const hal_q_t *p_q);

HAL DMAMUX request generator functions

HAL1

HAL2

HAL_StatusTypeDef HAL_DMAEx_ConfigMuxRequestGenerator(DMA_HandleTypeDef *hdma,
                                             HAL_DMA_MuxRequestGeneratorConfigTypeDef
                                             *pRequestGeneratorConfig);
hal_status_t HAL_DMA_DMAMUX_SetConfigRequestGenerator(hal_dma_handle_t *hdma,
                                             const hal_dma_dmamux_reqgen_config_t *p_config);
HAL_StatusTypeDef HAL_DMAEx_EnableMuxRequestGenerator(DMA_HandleTypeDef *hdma);
hal_status_t HAL_DMA_DMAMUX_EnableRequestGenerator(hal_dma_handle_t *hdma);
HAL_StatusTypeDef HAL_DMAEx_DisableMuxRequestGenerator(DMA_HandleTypeDef *hdma);
hal_status_t HAL_DMA_DMAMUX_DisableRequestGenerator(hal_dma_handle_t *hdma);

HAL DMAMUX synchro functions

HAL1

HAL2

HAL_StatusTypeDef HAL_DMAEx_ConfigMuxSync(DMA_HandleTypeDef *hdma,
                                        HAL_DMA_MuxSyncConfigTypeDef *pSyncConfig);
hal_status_t HAL_DMA_DMAMUX_SetConfigSync(hal_dma_handle_t *hdma,
                                       const hal_dma_dmamux_sync_config_t *p_config);